#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include"personnel1.h"
int main ()
{
personnel *p;
personnel p1;
char fichier_personnel[MAX];
int i,test;
printf("1: enregistrer_personnel \n");
printf("2:liste_personnel \n");
printf("3:rechercher_personnel \n");
printf("4:supprimer_personnel \n");
printf("taper autre bouton pour quitter menu \n");
printf ("donner votre choix \n");
scanf("%d",&i);
switch (i){
case 1:enregistrer_personnel (p1) ;
break;
case 2:liste_personnel(p1);
break;
case 3:rechercher_personnel(p1);
break;
case 4:supprimer_personnel(&p1);
break;
default :break;
}
}
void ajouter_personnel(personnel *p)
{
printf(" donner l'identifiant du personnel \n");
scanf("%s",(*p).identifiant);
printf(" donner le nom du personnel \n");
scanf("%s",(*p).nom);
printf(" donner le prenom du personnel \n");
scanf("%s",(*p).prenom);
printf(" donner l'age du personnel \n");
scanf("%d",&(*p).age);
printf(" donner cin du personnel \n");
scanf("%ld",&(*p).cin);
printf(" donner le sexe du personnel \n");
scanf("%s",(*p).sexe);
printf(" donner la metier du personnel \n");
scanf("%s",(*p).job);
printf("Le jour");
scanf("%d",&(*p).jour);
printf("Le mois");
scanf("%d",&(*p).mois);
printf("L'annee");
scanf("%d",&(*p).annee);
}
void enregistrer_personnel(personnel p)
{int a;
a=rechercher_personnel(p);
if (a) 
{printf("le personnel existe deja dans la base de données \n");}
else {
char chemin[]="fichiers_personnel.txt";
FILE *f;
f=fopen(chemin,"a");
if(f==NULL)

printf("\n Impossible d'ouvrir le fichier\n");

else
{
ajouter_personnel(&p);
fprintf(f,"%s %s %d %ld %s %s %s %d %d %d\n",p.nom,p.prenom,p.age,p.cin,p.sexe,p.identifiant,p.job,p.jour,p.mois,p.annee);
}
fclose(f);
}
main();
}
void liste_personnel(personnel p )
{
char chemin[]="fichiers_personnel.txt";
FILE *f;
f=fopen(chemin,"r");
if(f==NULL){
printf("\nImpossible\n");
}else{
while( fscanf(f,"%s %s %d %ld %s %s %s",p.nom,p.prenom,&p.age,&p.cin,p.sexe,p.identifiant,p.job) != EOF)
{
printf("\n Nom : %s",p.nom);
printf("\n prenom : %s",p.prenom);
printf("\n age : %d",p.age);
printf("\n cin : %ld",p.cin);
printf("\n sexe : %s",p.sexe);
printf("\n l'identifiant du personnel : %s",p.identifiant);
printf("\n le metier du personnel : %s",p.job);
}
}
fclose(f);
main();
}
int rechercher_personnel(personnel p)
{
char chemin[]="fichiers_personnel.txt";
FILE *f;
int t=0;
char id[20];
f=fopen(chemin,"r");
if (f==NULL) printf("\nimpossible\n");
else{
printf("\nsaisir id\n");
scanf("%s",id);
while(fscanf(f,"%s %s %d %ld %s %s %s",p.nom,p.prenom,&p.age,&p.cin,p.sexe,p.identifiant,p.job)!=EOF  )
{
if(strcmp(id,p.identifiant)==0){
t=1;
printf ("\n%s %s %d %ld %s %s %s %d %d %d",p.nom,p.prenom,p.age,p.cin,p.sexe,p.identifiant,p.job,p.jour,p.mois,p.annee);
break;
}
}
if(t==0)printf("\n no match\n");
fclose(f);
main();
return(t);
}
}
void supprimer_personnel (personnel *p)
{int a,t;
char id[100];
FILE *f1,*f2;
char chemin[]="fichiers_personnel.txt";
char temp[]="temp.txt";
f1=fopen(chemin,"r");
f2=fopen(temp,"w");
if(f1==NULL||f2==NULL)
printf("\n Impossible d'ouvrir le fichier \n");
else{
t=0;
do{
printf("\ndonner id\n");
scanf("%s",id);
rewind(f1);
while(fscanf(f1,"%s %s %d %ld %s %s %s %d %d %d",p->nom,p->prenom,&p->age,&p->cin,p->sexe,p->identifiant,p->job,&p->jour,&p->mois,&p->annee)!=EOF ){
 if(strcmp(p->identifiant,id)==0){
t=1 ;
break;}
}
}while(t==0);
printf("%d",t);
rewind(f1);
while (fscanf(f1,"%s %s %d %ld %s %s %s %d %d %d",p->nom,p->prenom,&p->age,&p->cin,p->sexe,p->identifiant,p->job,&p->jour,&p->mois,&p->annee)!=EOF ){
    if (strcmp(p->identifiant,id) != 0)
   fprintf (f2,"%s %s %d %ld %s %s %s %d %d %d\n",p->nom,p->prenom,p->age,p->cin,p->sexe,p->identifiant,p->job,p->jour,p->mois,p->annee);
}
fclose(f1);
fclose(f2);
remove(chemin);
rename(temp,chemin);
printf("\ndone!\n");
}
main();
}
